package com.grupobbva.seguridad.domain;

import java.io.Serializable;
import java.util.List;

import javax.persistence.*;


/**
 * The persistent class for the USUARIO database table.
 * 
 */
@Entity
public class Usuario implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@Column(name="USUARIO_ID")
	private String usuarioId;
	
	@Column(name="CLAVE")
	private String clave;

	@Column(name="NOMBRES")
	private String nombres;

	@Column(name="OFICINA_ID")
	private String oficinaId;

	@Transient
	private String oficinaNombre;

	@Column(name="PUESTO_ID")
	private String puestoId;

    @Transient
	private Perfil perfil;
    
    @Transient
	private PerfilEmpresa perfilEmpresa;
    
    @Transient
    private List<Opcion> opciones;
    
    @Transient
    private List<PerfilControl> controles;
    
    @Transient
    private List<Long> aplicacionIds;
    
    @Transient
    private long ingresoId;    
    @Transient    
    private String nombre;
    
    @Transient    
    private String codigoEmpresa;
    
    @Transient    
    private String apePat;        

	@Transient
	private String apeMat;
    
    @Transient
	private String tipDoc;
    
    @Transient
	private String numDoc;
	
    @Transient
    private String email;
	
    @Transient
    private String fecIng;
    
    
    public Usuario() {
    	
    }
    
    public Usuario(String usuarioId) {
    	this.usuarioId = usuarioId;
    }

	public String getUsuarioId() {
		return this.usuarioId;
	}

	public void setUsuarioId(String usuarioId) {
		this.usuarioId = usuarioId;
	}

	public String getNombres() {
		return this.nombres;
	}

	public void setNombres(String nombres) {
		this.nombres = nombres;
	}

	public String getOficinaId() {
		return this.oficinaId;
	}

	public void setOficinaId(String oficinaId) {
		this.oficinaId = oficinaId;
	}

	public String getPuestoId() {
		return this.puestoId;
	}

	public void setPuestoId(String puestoId) {
		this.puestoId = puestoId;
	}

	public Perfil getPerfil() {
		return perfil;
	}

	public void setPerfil(Perfil perfil) {
		this.perfil = perfil;
	}

	public String getClave() {
		return clave;
	}

	public void setClave(String clave) {
		this.clave = clave;
	}

	public String getOficinaNombre() {
		return oficinaNombre;
	}

	public void setOficinaNombre(String oficinaNombre) {
		this.oficinaNombre = oficinaNombre;
	}

	public void setOpciones(List<Opcion> opciones) {
		this.opciones = opciones;
	}

	public List<Opcion> getOpciones() {
		return opciones;
	}

	public void setIngresoId(long ingresoId) {
		this.ingresoId = ingresoId;
	}

	public long getIngresoId() {
		return ingresoId;
	}

	public List<Long> getAplicacionIds() {
		return aplicacionIds;
	}

	public void setAplicacionIds(List<Long> aplicacionIds) {
		this.aplicacionIds = aplicacionIds;
	}

	public void setControles(List<PerfilControl> controles) {
		this.controles = controles;
	}

	public List<PerfilControl> getControles() {
		return controles;
	}
	
	
	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getApePat() {
		return apePat;
	}

	public void setApePat(String apePat) {
		this.apePat = apePat;
	}

	public String getApeMat() {
		return apeMat;
	}

	public void setApeMat(String apeMat) {
		this.apeMat = apeMat;
	}

	public String getTipDoc() {
		return tipDoc;
	}

	public void setTipDoc(String tipDoc) {
		this.tipDoc = tipDoc;
	}

	public String getNumDoc() {
		return numDoc;
	}

	public void setNumDoc(String numDoc) {
		this.numDoc = numDoc;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getFecIng() {
		return fecIng;
	}

	public void setFecIng(String fecIng) {
		this.fecIng = fecIng;
	}

	/**
	 * @return the perfilEmpresa
	 */
	public PerfilEmpresa getPerfilEmpresa() {
		return perfilEmpresa;
	}

	/**
	 * @param perfilEmpresa the perfilEmpresa to set
	 */
	public void setPerfilEmpresa(PerfilEmpresa perfilEmpresa) {
		this.perfilEmpresa = perfilEmpresa;
	}

	/**
	 * @return the codigoEmpresa
	 */
	public String getCodigoEmpresa() {
		return codigoEmpresa;
	}

	/**
	 * @param codigoEmpresa the codigoEmpresa to set
	 */
	public void setCodigoEmpresa(String codigoEmpresa) {
		this.codigoEmpresa = codigoEmpresa;
	}
	
	

}